//
//  DM_OrmSQLIndertBuilder.swift
//  构建者模式_ORM_SWIFT
//
//  Created by macOS on 2017/4/25.
//  Copyright © 2017年 macOS. All rights reserved.
//

import Foundation

class DM_OrmSQLIndertBuilder<T: NSObject>: DM_SQLInsertBuilder {
    
    
    
    func insertIntoTableOrm(orm: DM_Orm, obj: T) -> DM_SQLInsertBuilder {
        
        
        var columns = Array<String>()
       
        
       //添加key的 cloumn 和value
        var values = Array<Any>()
     
        if let key_colum = orm.key?.column {
            columns.append(key_colum)
        }
        
        if let key_value = orm.key?.property {
            values.append(key_value)
        }
        // //添加普通属性的cloumn 和 value
        for item in orm.items {
           columns.append(item.column)
            if let v = obj.value(forKey: item.property) {
                values.append(v)
            }
          
        }
        
      
        
//        let obj = Mirror(reflecting: user.classForCoder)
//        
//        for (_,attr) in obj.children.enumerated() {
//          
//            values.append(attr.value)
//            
//        }
        
        
        return insert().into().talbe(orm.tableName).colums(columns).wsj_values(values)
    }
    
    

}
